# 建立索引
from haystack import indexes

from goods.models import SKU


class SKUIndex(indexes.SearchIndex,indexes.Indexable):
    """
    SKU 索引模型类
    """
    # document = True 告诉是以text 作为索引字段
    # use_template = True 模板指定索引字段的数据来源
    text = indexes.CharField(document=True,use_template=True)

    def get_model(self):
        """
        数据模型来源
        :return:
        """
        return SKU

    def index_queryset(self, using=None):
        """
         哪些商品显示出来
        :param using:
        :return:
        """
        # self.get_model() 获取模型类 而不是用sku
        return  self.get_model().objects.filter(is_launched=True)